//////////////////////////////////////////////////////////////////////////////////////////////
//	File			:	"Game.h"
//
//	Author			:	Mike Davis, Matt Stover, James Thornton, Keith Webster
//	
//	Project			:	TacWars
//
//	Last Modified	:	11/6/2013
//
//	Purpose			:	
//
//////////////////////////////////////////////////////////////////////////////////////////////

#ifndef GAME_H
#define GAME_H

#define WIN32_LEAN_AND_MEAN
#include <Windows.h>

class CSGD_DirectInput;
class CSGD_Direct3D;
class CSGD_TextureManager;
class CAnimationManager;
class CAnimation;
class AnimInfo;
class CFrame;

class CGame
{
private:
	static CGame* gameInstance;
	CSGD_Direct3D* D3D;
	CSGD_DirectInput* DirectInput;

	CAnimation* aniMaaaation;
	CFrame* fraaaame;
	AnimInfo * aniInfo;
	CAnimationManager* animManage;

	CSGD_TextureManager* textManage;
	int m_nScreenWidth;
	int m_nScreenHeight;
	bool m_bIsWindowed;

	bool test;
	bool testcheck;

	int testFrameID;

	CGame(void);
	~CGame(void);
	CGame(const CGame&);
	CGame& operator= (const CGame&);
	bool Input(void);
	void Update(void);
	void Render(void);
public:
	static CGame* GetInstance(void);
	static void DeleteInstance(void);
	void Initialize( HWND hWnd, HINSTANCE hInstance, int nWidth, int nHeight, bool bIsWindowed );
	bool Main(void);
	void Terminate(void);

};

#endif